package com.jsmtr.rms.entity;

import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name = "DNZResume")
public class DNZResume {

    @Id
    @Column(nullable = false, length = 50)
    private String id; // id

    @Column(nullable = false, length = 10)
    private String code; // 员工号

    @Column(nullable = false, length = 20)
    private String name; // 姓名

    @Column(nullable = false, length = 5)
    private String sexname; // 性别

    @Column(nullable = false, length = 10)
    private String age; // 年龄

    @Column(nullable = false, length = 50)
    private String userid; // id

    @Column(nullable = true, length = 50)
    private String education; // 最高学历

    @Column(nullable = true, length = 50)
    private String zzmmname; // 政治面貌

    @Column(nullable = false, length = 50)
    private String cardno; // 应聘者身份证号

    @Column(nullable = false)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date birthday;// 出生日期

    @Column(nullable = false, length = 50)
    private String rsdate; // 入司时间

    @Column(nullable = false, length = 50)
    private String groupdate; // 进入集团日期

    @Column(nullable = false, length = 100)
    private String dept1; // 所属部门

    @Column(nullable = false, length = 100)
    private String dept2; // 所在部门

    @Column(nullable = false, length = 50)
    private String job; // 工作岗位

    @Column(nullable = true, length = 50)
    private String position; // 专业技术职务

    @Column(nullable = true, length = 50)
    private String jndj; // 技能等级

    @Column(nullable = false, length = 11)
    private String tel;  // 应聘者手机号

    /********简历投递信息*******/

    @Column(nullable = false)
    private Date addDate; // 投递简历时间

    @Column(nullable = false, length = 50)
    private String planid; // 招聘计划ID

    @Column(nullable = false, length = 50)
    private String planname; // 招聘计划名称

    @Column(nullable = false, length = 50)
    private String pid; // 招聘方案ID

    @Column(nullable = false, length = 50)
    private String pname; // 招聘方案名称

    @Column(nullable = false, length = 50)
    private String jid; // 招聘岗位ID

    @Column(nullable = false, length = 50)
    private String jname; // 招聘岗位名称

    @Column(nullable = false, length = 50)
    private String fid; // 招聘流程ID

    @Column(nullable = false, length = 500)
    private String path; // 处理过程ID集合（/流程ID/流程ID/）

    /********简历筛选信息*******/

    @Column(nullable = true)
    private Date editDate; // 筛选简历时间

    @Column(nullable = true, length = 50)
    private String editUserid; // 筛选简历人ID

    @Column(nullable = true, length = 50)
    private String editUserName; // 筛选简历人姓名

    @Column(nullable = false, length = 20)
    private String state; // 简历筛选状态(未处理、通过、未通过)

    @Column(nullable = true, length = 2000)
    private String sxbz; // 简历筛选备注

    @Column(nullable = true, length = 50)
    private String op1; // 简历筛选结果是否公开（null/已公布/未公布）

    @Column(nullable = true, length = 50)
    private String jlarrange; //简历筛选安排发布情况

    /********应聘者主动放弃字段********/
    @Column(nullable = false, length = 10)
    private String fqstate; // 放弃状态（已放弃、未放弃）

    @Column(nullable = true, length = 50)
    private String fqfid; // 放弃时的流程id

    @Column(nullable = true)
    private Date fqdate; // 放弃时间

    /********录用环节字段********/
    @Column(nullable = true, length = 20)
    private String bdtime; // 报到时间

    @Column(nullable = true, length = 100)
    private String bdaddress; // 报到地点

    @Column(nullable = true, length = 100)
    private String bdlxr; // 报到联系人

    @Column(nullable = true, length = 100)
    private String bdlxdh; // 报到联系电话

    @Column(nullable = false, length = 10)
    private String bdmsg; // 报到通知（未发通知；已发通知）

    @Column(nullable = false, length = 10)
    private String bdstate; // 报到状态（未报到；已报到）

    @Column(nullable = true, length = 50)
    private String bduid; // 报到录入人ID

    @Column(nullable = true, length = 50)
    private String bduname; // 报到录入人姓名

    @Column(nullable = true)
    private Date bddate; // 报到录入时间

    @Column(nullable = true, length = 50)
    private String op2; // 报到录用结果是否公开（null/已公布/未公布）

    @Column(nullable = true, length = 50)
    private String bdarrange; //报到录用安排发布情况

    @Column(length = 50)
    private String bsarrange; //笔试安排发布情况

    @Column(length = 50)
    private String msarrange;//面试安排发布情况

    @Column(nullable = true, length = 100)
    private String bdremark; // 备注信息


    /*----岗位推荐字段----*/
    @Column(nullable = true, length = 50)
    private String rfid; // 岗位推荐时所在流程ID

    @Column(nullable = true, length = 50)
    private String orid; // 岗位推荐来源简历ID

    @Column(nullable = true, length = 50)
    private String nrid; // 岗位推荐目标简历ID

    @Column(nullable = true, length = 500)
    private String njname; // 推荐的新岗位名称

    @Column(nullable = true, length = 50)
    private String recommenddate; //转岗时间

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSexname() {
        return sexname;
    }

    public void setSexname(String sexname) {
        this.sexname = sexname;
    }

    public String getAge() {
        return age;
    }

    public void setAge(String age) {
        this.age = age;
    }

    public String getUserid() {
        return userid;
    }

    public void setUserid(String userid) {
        this.userid = userid;
    }

    public String getEducation() {
        return education;
    }

    public void setEducation(String education) {
        this.education = education;
    }

    public String getZzmmname() {
        return zzmmname;
    }

    public void setZzmmname(String zzmmname) {
        this.zzmmname = zzmmname;
    }

    public String getCardno() {
        return cardno;
    }

    public void setCardno(String cardno) {
        this.cardno = cardno;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    public String getRsdate() {
        return rsdate;
    }

    public void setRsdate(String rsdate) {
        this.rsdate = rsdate;
    }

    public String getGroupdate() {
        return groupdate;
    }

    public void setGroupdate(String groupdate) {
        this.groupdate = groupdate;
    }

    public String getDept1() {
        return dept1;
    }

    public void setDept1(String dept1) {
        this.dept1 = dept1;
    }

    public String getDept2() {
        return dept2;
    }

    public void setDept2(String dept2) {
        this.dept2 = dept2;
    }

    public String getJob() {
        return job;
    }

    public void setJob(String job) {
        this.job = job;
    }

    public String getPosition() {
        return position;
    }

    public void setPosition(String position) {
        this.position = position;
    }

    public String getJndj() {
        return jndj;
    }

    public void setJndj(String jndj) {
        this.jndj = jndj;
    }

    public String getTel() {
        return tel;
    }

    public void setTel(String tel) {
        this.tel = tel;
    }

    public Date getAddDate() {
        return addDate;
    }

    public void setAddDate(Date addDate) {
        this.addDate = addDate;
    }

    public String getPlanid() {
        return planid;
    }

    public void setPlanid(String planid) {
        this.planid = planid;
    }

    public String getPlanname() {
        return planname;
    }

    public void setPlanname(String planname) {
        this.planname = planname;
    }

    public String getPid() {
        return pid;
    }

    public void setPid(String pid) {
        this.pid = pid;
    }

    public String getPname() {
        return pname;
    }

    public void setPname(String pname) {
        this.pname = pname;
    }

    public String getJid() {
        return jid;
    }

    public void setJid(String jid) {
        this.jid = jid;
    }

    public String getJname() {
        return jname;
    }

    public void setJname(String jname) {
        this.jname = jname;
    }

    public String getFid() {
        return fid;
    }

    public void setFid(String fid) {
        this.fid = fid;
    }

    public String getPath() {
        return path;
    }

    public void setPath(String path) {
        this.path = path;
    }

    public Date getEditDate() {
        return editDate;
    }

    public void setEditDate(Date editDate) {
        this.editDate = editDate;
    }

    public String getEditUserid() {
        return editUserid;
    }

    public void setEditUserid(String editUserid) {
        this.editUserid = editUserid;
    }

    public String getEditUserName() {
        return editUserName;
    }

    public void setEditUserName(String editUserName) {
        this.editUserName = editUserName;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getSxbz() {
        return sxbz;
    }

    public void setSxbz(String sxbz) {
        this.sxbz = sxbz;
    }

    public String getOp1() {
        return op1;
    }

    public void setOp1(String op1) {
        this.op1 = op1;
    }

    public String getJlarrange() {
        return jlarrange;
    }

    public void setJlarrange(String jlarrange) {
        this.jlarrange = jlarrange;
    }

    public String getFqstate() {
        return fqstate;
    }

    public void setFqstate(String fqstate) {
        this.fqstate = fqstate;
    }

    public String getFqfid() {
        return fqfid;
    }

    public void setFqfid(String fqfid) {
        this.fqfid = fqfid;
    }

    public Date getFqdate() {
        return fqdate;
    }

    public void setFqdate(Date fqdate) {
        this.fqdate = fqdate;
    }

    public String getBdtime() {
        return bdtime;
    }

    public void setBdtime(String bdtime) {
        this.bdtime = bdtime;
    }

    public String getBdaddress() {
        return bdaddress;
    }

    public void setBdaddress(String bdaddress) {
        this.bdaddress = bdaddress;
    }

    public String getBdlxr() {
        return bdlxr;
    }

    public void setBdlxr(String bdlxr) {
        this.bdlxr = bdlxr;
    }

    public String getBdlxdh() {
        return bdlxdh;
    }

    public void setBdlxdh(String bdlxdh) {
        this.bdlxdh = bdlxdh;
    }

    public String getBdmsg() {
        return bdmsg;
    }

    public void setBdmsg(String bdmsg) {
        this.bdmsg = bdmsg;
    }

    public String getBdstate() {
        return bdstate;
    }

    public void setBdstate(String bdstate) {
        this.bdstate = bdstate;
    }

    public String getBduid() {
        return bduid;
    }

    public void setBduid(String bduid) {
        this.bduid = bduid;
    }

    public String getBduname() {
        return bduname;
    }

    public void setBduname(String bduname) {
        this.bduname = bduname;
    }

    public Date getBddate() {
        return bddate;
    }

    public void setBddate(Date bddate) {
        this.bddate = bddate;
    }

    public String getOp2() {
        return op2;
    }

    public void setOp2(String op2) {
        this.op2 = op2;
    }

    public String getBdarrange() {
        return bdarrange;
    }

    public void setBdarrange(String bdarrange) {
        this.bdarrange = bdarrange;
    }

    public String getBsarrange() {
        return bsarrange;
    }

    public void setBsarrange(String bsarrange) {
        this.bsarrange = bsarrange;
    }

    public String getMsarrange() {
        return msarrange;
    }

    public void setMsarrange(String msarrange) {
        this.msarrange = msarrange;
    }

    public void setBdremark(String bdremark) {
        this.bdremark = bdremark;
    }

    public String getBdremark() {
        return bdremark;
    }

    public String getRfid() {
        return rfid;
    }

    public void setRfid(String rfid) {
        this.rfid = rfid;
    }

    public String getOrid() {
        return orid;
    }

    public void setOrid(String orid) {
        this.orid = orid;
    }

    public String getNrid() {
        return nrid;
    }

    public void setNrid(String nrid) {
        this.nrid = nrid;
    }

    public String getNjname() {
        return njname;
    }

    public void setNjname(String njname) {
        this.njname = njname;
    }

    public String getRecommenddate() {
        return recommenddate;
    }

    public void setRecommenddate(String recommenddate) {
        this.recommenddate = recommenddate;
    }
}